home *** CD-ROM | disk | FTP | other *** search
/ Aminet 31 / Aminet 31 (1999)(Schatztruhe)[!][Jun 1999].iso / Aminet / dev / c / ctags.lha / ctags-3.0.3 / README < prev    next >
Text File  |  1999-02-17  |  3KB  |  103 lines

  1. Exuberant Ctags
  2. ===============
  3. Author: Darren Hiebert (darren@hiebert.com, http://darren.hiebert.com)
  4.  
  5. This is a reimplementation of the much underused ctags(1) program and is
  6. intended to be the mother of all ctags programs. I was motivated to write
  7. this because no currently available ctags program supported generation of
  8. tags for all possible tag candidates, and because most were easily fooled
  9. by a number of contruct
  10.  
  11.  
  12. What makes this ctags desirable?
  13.  
  14. 1.  It supports C, C++, Eiffel, Fortran, and Java.
  15.  
  16. 2.  It is capable of generating tags for all of the following language
  17.     constructs:
  18.  
  19.         C/C++:
  20.             macros
  21.             enumerators
  22.             function definitions, prototypes and declarations
  23.             class, enum, struct, and union names
  24.             class, struct, and union members
  25.             namespaces
  26.             typedefs
  27.             variable definitions and extern declarations
  28.  
  29.         Eiffel:
  30.             classes
  31.             features
  32.             local entities
  33.  
  34.         Fortran
  35.             block data
  36.             common blocks
  37.             entry points
  38.             functions
  39.             interfaces
  40.             lables
  41.             modules
  42.             namelists
  43.             programs
  44.             subroutines
  45.             derived types
  46.  
  47.         Java:
  48.             classes
  49.             fields
  50.             interfaces
  51.             methods
  52.             packages
  53.  
  54. 3.  It is very robust in parsing code and is far less easily fooled by code
  55.     containing #if preprocessor conditional constructs, using a conditional
  56.     path selection algorithm to resolve complicated choices, and a fall-back
  57.     algorithm when this one fails.
  58.  
  59. 4.  Can also be used to print out a human-readable list of selected objects
  60.     found in source files.
  61.  
  62. 5.  Supports output of Emacs-style TAGS files ("etags").
  63.  
  64. 6.  Supports UNIX, QNX, MSDOS, Windows 95/NT, OS/2, Amiga, and VMS.
  65.     Some pre-compiled binaries are available on the web site.
  66.  
  67.  
  68. You can find Exuberant Ctags at the following locations:
  69.  
  70.     http://darren.hiebert.com/ctags/index.html   (Official web site)
  71.     ftp://ftp.revnet.com/pub/ctags/
  72.     ftp://sunsite.unc.edu/pub/Linux/devel/lang/c/
  73.  
  74.  
  75. Which brings us to the most frequently asked question:
  76.  
  77.   Q: Why is it called "Exuberant" ctags?
  78.   A: Because one of the meanings of the word is:
  79.  
  80.      exuberant : produced in extreme abundance : PLENTIFUL syn see PROFUSE
  81.  
  82. Compare the tag file produced by Exuberant Ctags with that produced by any
  83. other ctags and you will see how appropriate the name is.
  84.  
  85.  
  86. This source code is distributed according to the terms of the GNU General
  87. Public License. It is provided on an as-is basis and no responsibility is
  88. accepted for its failure to perform as expected. It is worth at least as
  89. much as you paid for it!
  90.  
  91. Exuberant Ctags was originally derived from and inspired by the ctags
  92. program by Steve Kirkendall (kirkenda@cs.pdx.edu) that comes with the Elvis
  93. vi clone (though almost none of the original code remains). This, too, is
  94. freely available.
  95.  
  96. Please report any problems you find. The two problems I expect to be most
  97. likely are either a tag which you expected but is missing, or a tag created
  98. in error (shouldn't really be a tag). Please include a sample of code (the
  99. definition) for the object which misbehaves.
  100.  
  101. --
  102. vim:tw=76:sw=4:et:
  103.